// =======================================================================
// 
//       Filename:  string.hpp
// 
//    Description:  
// 
//        Version:  1.0
//        Created:  23.04.2010 22:13:53
//       Revision:  none
//       Compiler:  g++
// 
//         Author:  Dominik 'domachine' Burgdörfer (-), dominik.burgdoerfer@googlemail.com
//        Company:  -
// 
// =======================================================================


#ifndef  STRING_INC
#define  STRING_INC
#include <iostream>
#include "object.hpp"

namespace webplodder {
    namespace types {
        template <typename T>
        class BasicString 
            : public std::basic_string<T>,
              public Object
        {
        public:
            BasicString(const char* str);
            BasicString(const std::basic_string<T>& str);
        };

        typedef BasicString<char> String;

        template <typename T>
        BasicString<T>::BasicString(const char* str)
            : std::basic_string<T>(str), Object(STRING)
        {

        }

        template <typename T>
        BasicString<T>::BasicString(const std::basic_string<T>& str)
            : std::basic_string<T>(str), Object(STRING)
        {

        }
    }
}
#endif   // ----- #ifndef STRING_INC  -----
